<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>06_函数</title>
</head>
<body>
<script>
    function f1(){
        console.log("f1被执行了！");
    }
    f1();
    function f2(a){//形参
        console.log("f2被执行了！");
        console.log(a);
    }
    f2(100);//实参
    f2("hello");
    f2(true);

    //函数可以设置多个参数,且参数个数可以不匹配
    //如果实参个数大于形参个数,多余的实参会被忽略
    //如果实参个数小于形参个数,缺少的实参会被设置为undefined

    function f3(a,b){
        console.log("f3被执行了！");
        console.log(a+b);
    }
    f3(100,200);
    f3(1,2,3,4);//1+2
    f3(1);

    function f4(a,b){
        console.log(res);
        return a+b;
    }
    var res = f4(100,200);
    console.log(res);
    console.log(f4(111,200));


    //匿名函数自调用
    (function(){
      console.log("匿名函数被执行了！");
    })();

    //将函数整体交给变量f5保存，f5就相当于函数名字去使用
    var f5 = function(){
        console.log("f5被执行了！");
    }
    f5();
    console.log(f5);
    console.log(typeof f5());

    //箭头函数
    const f6 = () => {
       console.log("f6函数被执行了");
    }
    f6();

</script>
</body>
</html>